/** 
* All Rights Reserved , Copyright (C) 2020 , 青岛鼎信通讯股份有限公司
* 
* IBaseShareManageService
* 共享管理
* 
* 修改纪录
* 2020-08-27 版本：1.0 donghang 创建。
* @version 版本：1.0
* @author 作者：donghang
* 创建日期：2020-08-27
*/

package com.topscomm.base.service;

import java.util.List;
import java.util.Map;

import com.topscomm.base.IBaseService;
import com.topscomm.base.dao.IBaseShareManageDao;
import com.topscomm.base.pojo.BaseShareManageEntity;
import com.topscomm.tap.common.SessionUserBean;

public interface IBaseShareManageService extends IBaseService<BaseShareManageEntity, IBaseShareManageDao> {
	/**
	 * 通过类型查询默认的分享列表
	 * 
	 * @description:
	 * @param sharetypeList
	 * @return
	 * @author: donghang
	 * @date: 2020年8月27日上午9:29:44
	 * @modify:
	 */
	public List<Map<String, Object>> queryDefaultList(List<Map<String, Object>> sharetypeList);

	/**
	 * 
	 * @description:通过来源查询共享的数据
	 * @return
	 * @author: donghang
	 * @date: 2020年8月27日上午9:07:50
	 * @modify:
	 */
	public List<Map<String, Object>> queryListBySourceType(List<Map<String, Object>> sharetypeList,
			Map<String, Object> paraMap);

	/**
	 * 插入共享数据记录
	 * 
	 * @description:
	 * @param paraMap
	 * @author: donghang
	 * @date: 2020年8月27日上午9:19:33
	 * @modify:
	 */

	public void insertDataList(List<Map<String, Object>> listMap, boolean isDelete);

	/**
	 * 查询用户的权限范围语句
	 * 
	 * @description:
	 * @param usercode
	 * @return
	 * @author: donghang
	 * @date: 2020年8月27日下午1:32:51
	 * @modify:
	 */

	public String createShareWhereCondition(SessionUserBean sessionUserBean);

	/**
	 * 
	 * @description: 根据来源信息删除文件共享记录
	 * @param listSourceId
	 * @param sourceType
	 * @author: wanghongwei
	 * @date: 2020年8月27日上午9:08:23
	 * @modify:
	 */
	public void deleteBySource(List<String> listSourceId, String sourceType);

	/**
	 * 是否可见
	 * 
	 * @description:
	 * @return
	 * @author: donghang
	 * @date: 2020年9月1日下午5:57:55
	 * @modify:
	 */
	public boolean queryIsVisible(BaseShareManageEntity baseShareManageEntity, SessionUserBean sessionUserBean);
}
